﻿using System;

namespace Sudoku.Game
{
    /// <summary>
    /// класс вида с обработкой событий
    /// </summary>
	public interface IView
	{
		event EventHandler<EventArgs> NewGame;
		event EventHandler<EventArgs> ClearUserData;
		event EventHandler<EventArgs> SendSolution;
		event EventHandler<EventArgs> HelpSolution;

		FieldState GetCurrentState();
		void SetCurrentState(FieldState fieldState);
		Cell GetCellState(int horizontal, int vertical);
		void SetCellState(int horizontal, int vertical, Cell value);
		GameDifficulty GetSettedDifficulty();

		Coordinate GetActiveCellCoordinate();
	    void ShowMessage(string msg);
	}
}
